package retry;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zwl.yyyy.common.dal.mysql.entity.LongBaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;


/**
 * 事件重试表(EventRetryLog)表实体类
 *
 * @author makejava
 * @version 2023-10-10 10:33:35
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class EventRetryLogEntity extends LongBaseEntity {

	@TableId(value = "id",type = IdType.NONE)
    private Long id;    

    /**
     * 处理当前事件的spring实例对应的类全名
     */
    private String beanClassName;    
    
    /**
     * 处理当前事件入参类型类全名
     */
    private String paramClassName;


	/**
	 * 处理当前事件的方法名
	 */
	private String methodName;
    
    /**
     * 业务类型，createJdOrder: 创建京东订单
     */
    private String bizType;    
    
    /**
     * 业务编码或业务id,如创建京东订单，此则可存兴盛主单号
     */
    private String bizCode;    
    
    /**
     * 是否使用当前表中的bean进行重试，默认为1使用
     */
    private Boolean useSelfBeanFlag;
    
    /**
     * 已重试次数,从0起步
     */
    private Integer retryTimes;    
    
    /**
     * 最大重试次数（-1-不限；0-不重试）
     */
    private Integer maxRetryTimes;    
    
    /**
     * 重试到多少次则告警
     */
    private Integer retryTimesWarnThreshold;    
    
    /**
     * 是否连续告警， 默认0，非连续告警
     */
    private Boolean continuousWarnFlag;
    
    /**
     * 连续告警的间隔，默认1
     */
    private Integer continuousWarnInterval;    
    
    /**
     * 连续告警次数，0表示不限制次数，默认连续告警10次
     */
    private Integer continuousWarnMaxCount;    
    
    /**
     * 异常message
     */
    private String exceptionMessage;
    
        
    
    /**
     * INIT-初始化,FAILURE- 失败,SUCCESS- 成功
     */
    private String status;    
    
        
}
